// 验证用户登录
import axios from 'axios'
const baseURL = 'http://localhost:8888/api/private/v1/'
// 什么是基准url:我们的请求就是路由名称,但这个路由要基于服务器,设置基准路径的目的就是能够先找到对应的服务器,在匹配它里面设置的路由
axios.defaults.baseURL = baseURL
// 添加请求拦截器
axios.interceptors.request.use(function (config) {
  // 将token给到一个前后台约定好的key中，作为请求发送
  var token = localStorage.getItem('mytoken')
  if (token) {
    config.headers['Authorization'] = token
  }
  return config
}, function (error) {
  // Do something with request error
  return Promise.reject(error)
})
// 实现用户登录验证
export const login = (params) => {
  return axios.post('login', params)
    .then((result) => {
      return result.data
    })
}
// 获取用户列表
export const getUserList = (pa) => {
  return axios.get('users', pa)
    .then((result) => {
      return result.data
    })
}
// 实现用户添加
export const addUser = (params) => {
  return axios.post('users', params)
    .then((result) => {
      return result.data
    })
}
// 实现数据编辑
export const editUser = (params) => {
  // console.log(params)
  return axios.put(`users/${params.id}`, params)
    .then((result) => {
      // console.log(result.data)
      return result.data
    })
}
// 实现用户数据删除
export const deleteUser = (id) => {
  return axios.delete(`users/${id}`)
    .then((result) => {
      // console.log(result)
      return result.data
    })
}
// 查询角色列表
export const getRolesList = (params) => {
  return axios.get(`roles`)
    .then((result) => {
      // console.log(result.data)
      return result.data
    })
}
// 实现分配用户角色
export const grantUser = (params) => {
  return axios.put(`users/${params.id}/role`, {rid: params.rid})
    .then((result) => {
      // console.log(result)
      return result.data
    })
}
// 实现角色状态的改变
export const changeuserstate = (params) => {
  return axios.put(`users/${params.uid}/state/${params.type}`)
    .then((res) => {
      // console.log(res)
      return res.data
    })
}
// 查询权限列表
export const getRightList = (params) => {
  return axios.get(`rights/${params.type}`)
    .then((result) => {
      // console.log(result.data)
      return result.data
    })
}
// 实现当前用户角色的权限分配
export const grantroleright = (id, rids) => {
  // console.log(id, rids)
  return axios.post(`roles/${id}/rights`, rids)
    .then((res) => {
      // console.log(res)
      return res.data
    })
}
// 删除角色的指定权限
export const deleteroleright = (roleId, rightId) => {
  return axios.delete(`roles/${roleId}/rights/${rightId}`)
    .then((res) => {
      // console.log(res)
      return res.data
    })
}
// 获取左侧菜单栏
export const getMenus = () => {
  return axios.get(`menus`)
    .then((res) => {
      // console.log(res)
      return res.data
    })
}
// 获取商品列表
export const getGoodsList = () => {
  return axios.get(`goods`)
    .then((res) => {
      // console.log(res)
      return res.data
    })
}
// 获取商品分类列表
export const getCategoriesList = (pa) => {
  return axios.get(`categories`, {params: pa})
    .then((res) => {
      // console.log(res.data)
      return res.data
    })
}
// 添加分类
export const addCategory = (pa) => {
  return axios.post('categories', pa)
    .then(res => {
      // console.log(res.data)
      return res.data
    })
}
// 根据id查询分类
export const getCategory = (id) => {
  return axios.get(`categories/${id}`)
    .then((res) => {
      // console.log(res.data)
      return res.data
    })
}
// 实现编辑分类提交
export const editCateLiat = (id, catname) => {
  return axios.put(`categories/${id}`, {cat_name: catname})
    .then((res) => {
      // console.log(res)
      return res.data
    })
}
// 删除分类
export const deletecategory = (id) => {
  return axios.delete(`categories/${id}`)
    .then((res) => {
      // console.log(res)
      return res.data
    })
}
